package org.joyflow.core.service;

import org.joyflow.core.entity.MetaTable;
import org.joyflow.core.entity.MetaTableDir;
import org.joyflow.core.entity.MetaTableField;

import java.io.Serializable;
import java.util.List;

public interface MetaTableServiceInterface {
    List<MetaTableDir> getDirs();

    void insertDir(MetaTableDir dir);

    void deleteDir(Serializable id);

    void renameDir(MetaTableDir dir);

    MetaTableDir getDir(Serializable id);

    List<MetaTable> getTables();

    List<MetaTable> getTablesByDirId(Serializable dirId);

    MetaTable getTableById(Serializable id);

    List<MetaTableField> getFieldsByMetaTableId(Long metaTableId);

    Object generateDDL(Long metaTableId);

    Object preview(Long metaTableId, int pageIndex, int pageSize);
}
